package com.demo.mongo.service;

import com.demo.mongo.entity.Test;

import javax.xml.crypto.Data;
import java.util.List;

/**
 * 测试使用 mongo 服务接口
 *
 * @author YT
 * @date 2019-08-19
 */
public interface TestService {

    /**
     * 创建对象
     *
     * @param test
     */
    void insert(Test test);

    /**
     * 批量创建对象
     *
     * @param tests
     */
    void batchInsert(List<Test> tests);

    /**
     * 根据 ID 查询对象
     *
     * @return
     */
    Test findById(String id);

    /**
     * 查询一段时间范围内的对象
     *
     * @param startTime
     * @param endTime
     * @return
     */
    List<Test> findToSendList(Data startTime, Data endTime);

    /**
     * 更新对象
     *
     * @param test
     */
    void update(Test test);

    /**
     * 删除对象
     *
     * @param id
     */
    void delete(String id);

    /**
     * 保存对象
     *
     * @param test
     */
    void save(Test test);

    /**
     * 查询对象列表
     *
     * @return
     */
    List<Test> findList();

}
